home *** CD-ROM | disk | FTP | other *** search
/ PC Plus SuperCD (UK) 1998 August / PC Plus SuperCD 50a Issue 142 (CD142a) (August 1998).iso / trial / demon / TURNPIKE.1 / CLASSES.ZIP / JAVA / AWT / MenuBar.class (.txt) < prev    next >
Encoding:
Java Class File  |  1997-04-14  |  1.8 KB  |  111 lines

  1. package java.awt;
  2.  
  3. import java.awt.peer.MenuBarPeer;
  4. import java.util.Vector;
  5.  
  6. public class MenuBar extends MenuComponent implements MenuContainer {
  7.    Vector menus = new Vector();
  8.    Menu helpMenu;
  9.  
  10.    public synchronized void addNotify() {
  11.       super.peer = Toolkit.getDefaultToolkit().createMenuBar(this);
  12.       int var1 = this.countMenus();
  13.  
  14.       for(int var2 = 0; var2 < var1; ++var2) {
  15.          this.getMenu(var2).addNotify();
  16.       }
  17.  
  18.    }
  19.  
  20.    public void removeNotify() {
  21.       int var1 = this.countMenus();
  22.  
  23.       for(int var2 = 0; var2 < var1; ++var2) {
  24.          this.getMenu(var2).removeNotify();
  25.       }
  26.  
  27.       super.removeNotify();
  28.    }
  29.  
  30.    public Menu getHelpMenu() {
  31.       return this.helpMenu;
  32.    }
  33.  
  34.    public synchronized void setHelpMenu(Menu var1) {
  35.       if (this.helpMenu != var1) {
  36.          if (this.helpMenu != null) {
  37.             this.helpMenu.removeNotify();
  38.             this.helpMenu.parent = null;
  39.          }
  40.  
  41.          if (var1.parent != this) {
  42.             this.add(var1);
  43.          }
  44.  
  45.          this.helpMenu = var1;
  46.          if (var1 != null) {
  47.             var1.isHelpMenu = true;
  48.             var1.parent = this;
  49.             MenuBarPeer var2 = (MenuBarPeer)super.peer;
  50.             if (var2 != null) {
  51.                if (var1.peer == null) {
  52.                   var1.addNotify();
  53.                }
  54.  
  55.                var2.addHelpMenu(var1);
  56.             }
  57.          }
  58.  
  59.       }
  60.    }
  61.  
  62.    public synchronized Menu add(Menu var1) {
  63.       if (var1.parent != null) {
  64.          var1.parent.remove(var1);
  65.       }
  66.  
  67.       this.menus.addElement(var1);
  68.       var1.parent = this;
  69.       MenuBarPeer var2 = (MenuBarPeer)super.peer;
  70.       if (var2 != null) {
  71.          if (var1.peer == null) {
  72.             var1.addNotify();
  73.          }
  74.  
  75.          var2.addMenu(var1);
  76.       }
  77.  
  78.       return var1;
  79.    }
  80.  
  81.    public synchronized void remove(int var1) {
  82.       MenuBarPeer var2 = (MenuBarPeer)super.peer;
  83.       if (var2 != null) {
  84.          Menu var3 = this.getMenu(var1);
  85.          var3.removeNotify();
  86.          var3.parent = null;
  87.          var2.delMenu(var1);
  88.       }
  89.  
  90.       this.menus.removeElementAt(var1);
  91.    }
  92.  
  93.    public synchronized void remove(MenuComponent var1) {
  94.       Vector var2 = this.menus;
  95.       int var4 = var2.indexOf(var1, 0);
  96.       if (var4 >= 0) {
  97.          this.remove(var4);
  98.       }
  99.  
  100.    }
  101.  
  102.    public int countMenus() {
  103.       Vector var1 = this.menus;
  104.       return var1.elementCount;
  105.    }
  106.  
  107.    public Menu getMenu(int var1) {
  108.       return (Menu)this.menus.elementAt(var1);
  109.    }
  110. }
  111.